package com.ruoyi.threeViolation.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 三违模板管理对象 violation_template
 *
 * @author lth
 * @date 2023-12-18
 */
public class ViolationTemplate extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    @JsonSerialize(using = ToStringSerializer.class)
    private String id;

    /** 模板编号 */
    @Excel(name = "模板编号")
    private String templateCode;

    /** 三违名称 */
    @Excel(name = "三违名称")
    private String templateName;

    /** 三违类别 */
    @Excel(name = "三违类别")
    private String volationCategory;

    /** 三违等级 */
    @Excel(name = "三违等级")
    private String volationLevel;

    /** 专业 */
    @Excel(name = "专业")
    private String major;

    /** 界定标准 */
    @Excel(name = "界定标准")
    private String definingCriteria;

    /** 考核责任人金额 */
    @Excel(name = "考核责任人金额")
    private BigDecimal responsiblePersonAmount;

    /** 值班干部金额 */
    @Excel(name = "值班干部金额")
    private BigDecimal dutyAmount;

    /** 跟班干部金额 */
    @Excel(name = "跟班干部金额")
    private BigDecimal attendantAmount;

    /** 班组长金额 */
    @Excel(name = "班组长金额")
    private BigDecimal teamLeaderAmount;

    /** 安监人员金额 */
    @Excel(name = "安监人员金额")
    private BigDecimal safetyAmount;

    /** 日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date templateDate;

    /** 创建人姓名 */
    @Excel(name = "创建人姓名")
    private String createByName;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createAt;

    /** 更新人姓名 */
    @Excel(name = "更新人姓名")
    private String updateByName;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date updateAt;

    /** 版本 */
    @Excel(name = "版本")
    private String version;

    /** 状态 */
    @Excel(name = "状态")
    private Integer status;

    /** 扩展字段1 */
    @Excel(name = "扩展字段1")
    private String extra1;

    /** 扩展字段2 */
    @Excel(name = "扩展字段2")
    private String extra2;

    /** 扩展字段3 */
    @Excel(name = "扩展字段3")
    private String extra3;

    public void setId(String id)
    {
        this.id = id;
    }

    public String getId()
    {
        return id;
    }
    public void setTemplateCode(String templateCode)
    {
        this.templateCode = templateCode;
    }

    public String getTemplateCode()
    {
        return templateCode;
    }
    public void setTemplateName(String templateName)
    {
        this.templateName = templateName;
    }

    public String getTemplateName()
    {
        return templateName;
    }
    public void setVolationCategory(String volationCategory)
    {
        this.volationCategory = volationCategory;
    }

    public String getVolationCategory()
    {
        return volationCategory;
    }
    public void setVolationLevel(String volationLevel)
    {
        this.volationLevel = volationLevel;
    }

    public String getVolationLevel()
    {
        return volationLevel;
    }
    public void setMajor(String major)
    {
        this.major = major;
    }

    public String getMajor()
    {
        return major;
    }
    public void setDefiningCriteria(String definingCriteria)
    {
        this.definingCriteria = definingCriteria;
    }

    public String getDefiningCriteria()
    {
        return definingCriteria;
    }
    public void setResponsiblePersonAmount(BigDecimal responsiblePersonAmount)
    {
        this.responsiblePersonAmount = responsiblePersonAmount;
    }

    public BigDecimal getResponsiblePersonAmount()
    {
        return responsiblePersonAmount;
    }
    public void setDutyAmount(BigDecimal dutyAmount)
    {
        this.dutyAmount = dutyAmount;
    }

    public BigDecimal getDutyAmount()
    {
        return dutyAmount;
    }
    public void setAttendantAmount(BigDecimal attendantAmount)
    {
        this.attendantAmount = attendantAmount;
    }

    public BigDecimal getAttendantAmount()
    {
        return attendantAmount;
    }
    public void setTeamLeaderAmount(BigDecimal teamLeaderAmount)
    {
        this.teamLeaderAmount = teamLeaderAmount;
    }

    public BigDecimal getTeamLeaderAmount()
    {
        return teamLeaderAmount;
    }
    public void setSafetyAmount(BigDecimal safetyAmount)
    {
        this.safetyAmount = safetyAmount;
    }

    public BigDecimal getSafetyAmount()
    {
        return safetyAmount;
    }
    public void setTemplateDate(Date templateDate)
    {
        this.templateDate = templateDate;
    }

    public Date getTemplateDate()
    {
        return templateDate;
    }
    public void setCreateByName(String createByName)
    {
        this.createByName = createByName;
    }

    public String getCreateByName()
    {
        return createByName;
    }
    public void setCreateAt(Date createAt)
    {
        this.createAt = createAt;
    }

    public Date getCreateAt()
    {
        return createAt;
    }
    public void setUpdateByName(String updateByName)
    {
        this.updateByName = updateByName;
    }

    public String getUpdateByName()
    {
        return updateByName;
    }
    public void setUpdateAt(Date updateAt)
    {
        this.updateAt = updateAt;
    }

    public Date getUpdateAt()
    {
        return updateAt;
    }
    public void setVersion(String version)
    {
        this.version = version;
    }

    public String getVersion()
    {
        return version;
    }
    public void setStatus(Integer status)
    {
        this.status = status;
    }

    public Integer getStatus()
    {
        return status;
    }
    public void setExtra1(String extra1)
    {
        this.extra1 = extra1;
    }

    public String getExtra1()
    {
        return extra1;
    }
    public void setExtra2(String extra2)
    {
        this.extra2 = extra2;
    }

    public String getExtra2()
    {
        return extra2;
    }
    public void setExtra3(String extra3)
    {
        this.extra3 = extra3;
    }

    public String getExtra3()
    {
        return extra3;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("templateCode", getTemplateCode())
            .append("templateName", getTemplateName())
            .append("volationCategory", getVolationCategory())
            .append("volationLevel", getVolationLevel())
            .append("major", getMajor())
            .append("definingCriteria", getDefiningCriteria())
            .append("responsiblePersonAmount", getResponsiblePersonAmount())
            .append("dutyAmount", getDutyAmount())
            .append("attendantAmount", getAttendantAmount())
            .append("teamLeaderAmount", getTeamLeaderAmount())
            .append("safetyAmount", getSafetyAmount())
            .append("templateDate", getTemplateDate())
            .append("createBy", getCreateBy())
            .append("createByName", getCreateByName())
            .append("createAt", getCreateAt())
            .append("updateBy", getUpdateBy())
            .append("updateByName", getUpdateByName())
            .append("updateAt", getUpdateAt())
            .append("version", getVersion())
            .append("status", getStatus())
            .append("extra1", getExtra1())
            .append("extra2", getExtra2())
            .append("extra3", getExtra3())
            .toString();
    }
}
